原帖 | Jason | 2026-05-31 19:23 | 👍2 | 阅读约1
📖 新手册上线 | 为什么你学 Linux 驱动这么痛苦?
很多人学 Linux 驱动,卡的不是能力,是没有地图。
STM32 写得挺溜,一上 Linux 就懵——register_chrdev 是干嘛的?platform_driver 为什么要分成两块?probe 函数什么时候被调用?DTS 怎么和驱动对上?
书上有答案,但看完还是不知道自己在哪。这本手册就是想解决这件事。
它不是 API 教科书,它是一条从 MCU 思维走到 Linux 驱动思维的架构演进路线:
功能分层期 → 平台抽象期 → 对象化期 → Linux 驱动模型
每个阶段为什么出现、解决了什么问题、MCU 的思路和 Linux 的思路差在哪里——一步一步讲清楚。
看完你会知道:platform_device / platform_driver 不是 Linux 设计者拍脑袋出来的,它对应的是你在 MCU 里早就用过的那个思路,只是换了一套更正式的表达。
全书 62 页,14+ 张自绘架构图,11 个核心章节 + 2 个附录。
代码基线 Linux kernel 5.10 BSP,I2C 示例以 MPU6050 / RK3568 为参考。
可以从头读,也可以直接跳到你卡住的那一章。
附件:
- 为什么你学Linux驱动这么痛苦-v1.0.1.pdf(7.1MB)
相关笔记